การออกแบบพื้นฐานของระบบคำนวณถูกกำหนดโดยความสัมพันธ์ระหว่างหน่วยประมวลผลกับหน่วยความจำ ความแตกต่างหลักอยู่ที่ว่าคำสั่งและข้อมูลใช้เส้นทางร่วมกันหรือใช้ช่องทางที่แยกจากกัน
1. สถาปัตยกรรมวอน นอยมาน
ใช้ในระบบทั่วไป เช่น x86-64, โมเดลนี้มีพื้นที่หน่วยความจำรวมกัน หน่วยประมวลผล (CPU) เข้าถึงทั้งโค้ดและข้อมูลผ่านบัสเพียงสายเดียว ทำให้เกิดปัญหา จุดตันของวอน นอยมาน: ความหน่วงเวลาที่เกิดขึ้นเมื่อหน่วยประมวลผลต้องสลับการใช้งานบัสระหว่างการดึงคำสั่งกับการเข้าถึงข้อมูล
2. สถาปัตยกรรมฮาร์วาร์ด
พบได้บ่อยในโปรเซสเซอร์เฉพาะทาง และ ARMv8-A การใช้งานแคชระดับ L1 สถาปัตยกรรมนี้ใช้หน่วยความจำและเส้นทางสัญญาณที่แยกจากกันอย่างเป็นจริง ทำให้สามารถดึงคำสั่งและข้อมูลพร้อมกันได้ ซึ่งเพิ่มประสิทธิภาพการทำงานอย่างมาก
แผนภูมิลำดับ: วงจรดึงข้อมูลในสถาปัตยกรรมวอน นอยมาน แสดงการใช้งานบัสแบบเรียงลำดับ
3. การรวมตัวทางโครงสร้าง
ระบบคอมพิวเตอร์ประสิทธิภาพสูงสมัยใหม่มักใช้ สถาปัตยกรรมฮาร์วาร์ดแบบปรับปรุงพวกเขาทำงานเหมือนเครื่องฮาร์วาร์ดที่ระดับแคชระดับ L1 (แยกแคชคำสั่งและแคชข้อมูล) เพื่อเพิ่มความเร็วสูงสุด ในขณะที่ยังคงใช้โมเดลวอน นอยมานที่หน่วยความจำหลักเพื่อความยืดหยุ่นในการเขียนโปรแกรม